Systems and methods for filtering electronic communications

ABSTRACT

Systems and methods are provided for filtering electronic communications. One exemplary method includes receiving a first message directed to a user, the first message including a plurality of messaging data; and receiving from the user a selection of the messaging data within the first message. The method further includes adding the selected messaging data to a database in relation to one or more contacts of the user, and receiving a second message directed to the user from at least one of the one or more contacts. The method further includes scanning the second message for the selected messaging data, and filtering, with at least one processor, the second message from delivery to the user if the second message contains the selected messaging data.

RELATED APPLICATION(S)

This application claims the benefit of priority of U.S. ProvisionalApplication No. 61/313,110, filed Mar. 11, 2010, titled “Systems andMethods for Location Tracking and Filtering Electronic Communications,”the disclosure of which is expressly incorporated herein by reference inits entirety.

TECHNICAL FIELD

The present disclosure relates generally to systems and methods forelectronic messaging. More particularly, and without limitation, thepresent disclosure relates to systems and methods for filteringelectronic communications using, for example, an instant messaginginterface.

BACKGROUND

As more people turn to electronic communications for their social andprofessional interaction with others, people are finding theirelectronic communications interfaces becoming duplicative and difficultto manage. As a result, universal electronic messaging systems have beendeveloped that allow users to obtain updates from their friends and someof their favorite social networks and websites. Such systems allow usersto, for example, publish their status and broadcast it to their friends,and view updates from their friends from one or more sources, such associal networks (e.g., Digg, Facebook, Flickr, Twitter, YouTube andAIM). A user's communications may be aggregated on a universal messagingsystem and across the Web, so that the user can obtain updates in oneconvenient place. Users may also use the universal system to updatetheir friends on what the user is doing by issuing only one post, whilesetting a status on networks such as AIM, Facebook, and Twitter.

In some systems, users may have options for setting their status. Theycan simply find an input field at the top of a browser or mobileinterface, and enter the text they would like to share. They can alsoupdate their status by typing a status message from a phone with SMS ortext message capabilities. Users may also easily add photos from alisting of friends (such as a “Buddy List”) just by clicking into thestatus box at the top of the list and selecting the photos to upload.

In some cases, it may be desirable to associate a user's location with auser's status update and/or photo. For example, if a user is using amobile device to interact with a universal messaging system, the usermay want other people to know where the user was when the status updateand/or photo was created. The user may also want other users to knowmore about that location. As a result, universal systems have beenprovided with features through which a latitude and longitude, locationname, and/or map can be associated with a status update and/or photo.While this may give other users more information about that particularmessage, it does not provide a sufficient way for users to follow andkeep track of a particular location.

In addition, in view of the large quantity of incoming status updatesand photos that a single user may receive from across one or more socialnetworks and friends, it may be desirable to filter out some of thosecommunications. Past efforts have only focused on filtering outparticular types of communications or senders of communications.However, these prior techniques do not provide a sufficient way forusers to perform targeted filtering or hiding of communications relatingto locations that are not of interest, or specific words or phrases.

The disclosed embodiments of the present disclosure are directed toovercoming one or more of the problems set forth above. Among otherthings, the disclosed embodiments include systems and methods forlocation tracking, and filtering or hiding electronic communications.

SUMMARY

Consistent with the present disclosure, computerized systems and methodsare provided for location tracking and filtering or hiding electroniccommunications. In addition, the present disclosure relates to systemsand methods for filtering electronic communications in a messaging orsocial networking environment.

In accordance with one disclosed exemplary embodiment, a method includesreceiving a first message directed to a user, the first messageincluding a plurality of messaging data; and receiving from the user aselection of the messaging data within the first message. The methodfurther includes adding the selected messaging data to a database inrelation to one or more contacts of the user; and receiving a secondmessage directed to the user from at least one of the one or morecontacts. The method further includes scanning the second message forthe selected messaging data; and filtering, with at least one processor,the second message from delivery to the user if the second messagecontains the selected messaging data.

In accordance with another disclosed exemplary embodiment a computersystem is disclosed for filtering electronic communications. The systemincludes a database configured to store user data and selected messagingdata; and a messaging server disposed in communication with thedatabase. The messaging server is configured to receive a first messagedirected to a user, the first message including a plurality of messagingdata; receive from the user a selection of the messaging data within thefirst message; add the selected messaging data to a database in relationto one or more contacts of the user; receive a second message directedto the user from at least one of the one or more contacts; scan thesecond message for the selected messaging data; and filter, with atleast one processor, the second message from delivery to the user if thesecond message contains the selected messaging data.

In accordance with another disclosed exemplary embodiment anon-transitory computer-readable storage medium is disclosed for storinginstructions that, when executed by a computer, cause the computer toreceive a first message directed to a user, the first message includinga plurality of messaging data; receive from the user a selection of themessaging data within the first message; add the selected messaging datato a database in relation to one or more contacts of the user; receive asecond message directed to the user from at least one of the one or morecontacts; scan the second message for the selected messaging data; andfilter, with at least one processor, the second message from delivery tothe user if the second message contains the selected messaging data.

Before explaining certain embodiments of the disclosure in detail, it isto be understood that the disclosure is not limited in its applicationto the details of construction and to the arrangements of the componentsset forth in the following description or illustrated in the drawings.The disclosure is capable of embodiments in addition to those describedand of being practiced and carried out in various ways. Also, it is tobe understood that the phraseology and terminology employed herein, aswell as in the abstract, are for the purpose of description and shouldnot be regarded as limiting.

As such, those skilled in the art will appreciate that the conceptionupon which this disclosure is based may readily be utilized as a basisfor designing other structures, methods, and systems for carrying outthe several purposes of the present disclosure. It is important,therefore, to recognize that the claims should be regarded as includingsuch equivalent constructions insofar as they do not depart from thespirit and scope of the present disclosure.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this disclosure, illustrate several embodiments and aspects ofthe present disclosure, and together with the description, serve toexplain certain principles of the invention. In the drawings:

FIG. 1 depicts an exemplary system for location tracking and filteringor hiding electronic communications, consistent with embodiments of thepresent disclosure;

FIGS. 2A-2C depict exemplary methods for location tracking, consistentwith embodiments of the present disclosure;

FIGS. 3A-3C depict exemplary screenshots of interfaces for locationtracking, consistent with embodiments of the present disclosure;

FIGS. 4A and 4B depict exemplary methods for filtering or hidingelectronic communications, consistent with embodiments of the presentdisclosure; and

FIG. 5 depicts an exemplary screenshot of an interface for filtering orhiding electronic communications, consistent with embodiments of thepresent disclosure.

Like reference symbols in the various drawings indicate like elements.For brevity, several elements in the figures described below arerepresented as monolithic entities. However, as would be understood byone skilled in the art, these elements each may include numerousinterconnected computers and components designed to perform a set ofspecified operations and/or dedicated to a particular geographic region.

Additional objects and advantages will be set forth in part in thedescription which follows, and in part will be obvious from thedescription, or may be learned by practice of the embodiments of theinvention. For example, the objects and advantages may be realized andattained by means of the elements and combinations particularly pointedout in the appended claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory onlyand are not restrictive of the invention, as claimed.

DETAILED DESCRIPTION

Reference will now be made in detail to the present exemplaryembodiments of the invention, examples of which are illustrated in theaccompanying drawings. Wherever possible, the same reference numberswill be used throughout the drawings to refer to the same or like parts.

FIG. 1 is a block diagram of an exemplary communication system 100 forimplementing embodiments of the present disclosure. Communication system100 may include a location tracking and message filtering system, andmay be configured to identify and process incoming electroniccommunications, and electronic media content using one or more of theembodiments disclosed herein. Electronic communications may include, forexample, electronic messages (e.g., electronic mail messages, ShortMessaging System (“SMS”) messages, Multimedia Messaging System (“MMS”)messages, etc.), standardized calendar files, invitations, statusupdates, etc. Electronic media content may include, for example,photographs, videos, songs, newsletters, articles, web pages, streamingmedia, or any other electronic multimedia. Communication system 100 mayinclude any type of communication system, including, for example, awired communication system, a wireless communication system, a local- orwide-area network, an Internet network, or any combination thereof.

As shown in FIG. 1, communication system 100 may include a plurality ofmessaging clients 102, mobile messaging clients 103, messaging servers104, web servers 106, and GPS servers 108, all disposed in communicationwith an electronic network 110, such as the Internet. Messaging clients102 and mobile messaging clients 103 may each interact with messagingservers 104, web servers 106, and/or GPS servers 108 through computersor processors connected to the electronic network 110 (such as theInternet), and/or through mobile communications networks. In oneembodiment, messaging clients 102 may operate on desktop computersconnected to the Internet, while mobile messaging clients 103 mayoperate on mobile devices, such as mobile phones or personal digitalassistants (“PDAs”). Mobile messaging clients 103 may communicate witheach other and/or any other device in communication with the Internet110 through a mobile communications network 105.

Messaging servers 104 may be any type of servers configured to receive,route, and send electronic messages between devices connected to theInternet. For example, messaging servers 104 may send and receivee-mails, text messages, and/or instant messages. As shown in FIG. 1,messaging servers 104 may implement any suitable standard communicationslanguage or protocol, such as Extensible Messaging and Presence Protocol(“XMPP”), SMS, MMS, Simple Mail Transfer Protocol (“SMTP”), Post OfficeProtocol 3 (“POP3”), and/or Internet Message Access Protocol (“IMAP”).Of course, messaging servers 104 may implement any other suitable typeof protocol or standard whether dedicated or universal. In oneembodiment, messaging servers 104 may be disposed in communication withany type of large scale databases for storing user data, electronicmedia content, communications history data, location data, and/or usergenerated content.

Web servers 106 may be configured to operate and implement web pagesand/or applications for display on one or more of messaging clients 102and/or mobile messaging clients 103. For example, web servers 106 mayimplement web-based or browser-based email or messaging programs throughwhich users may communicate by sending IMs, text messages, and/ore-mails. Web servers 106 may also implement browser-based mappingprograms, media content programs, or any other entertainment or utilityprograms for display to users through the Internet 110 or a mobilenetwork 105.

In one embodiment, web servers 106 may be disposed in communication withone or more back-end server systems and/or databases. For example, webservers 106 may be disposed in communication with one or more selectedtext databases 112, which are configured to store text (or objects,images, or other files) desired to be filtered or hidden by a user, aswill be described in more detail below. Web servers 106 may also bedisposed in communication with user info databases 114, which areconfigured to store user IDs, user mobile device information, userdemographic information, user location coordinates, user preferences,etc. Web servers 106 may also be disposed in communication with locationdatabases 116, which may be configured to store maps, coordinates,location information (e.g., restaurants, stores, venues, etc.), commentsabout locations, photos of locations, videos of locations, etc.

As further shown in FIG. 1, GPS servers 108 may also be disposed incommunication with the Internet 110, web servers 106, and/or mobilemessaging clients 103. GPS servers 108 may be configured to facilitatethe communication of location data from mobile messaging clients 103.For instance, in one embodiment, each mobile messaging client 103 may beconfigured to detect and transmit to GPS servers 108 a latitude andlongitude associated with a current location of the mobile messagingclient. Alternatively, GPS servers 108 may receive such latitude andlongitude data from satellites in communication with mobile messagingclients 103 and transmit such location data to mobile messaging clients103, web servers 106, and/or messaging servers 104. GPS servers 108 mayalso be provided with or in communication with storage and processingsystems for mapping mobile messaging clients 103 and/or mapping publiclocations, such as street data, restaurants, bars, clubs, stores, gasstations, museums, transportation sites, and/or entertainment venues.

The exemplary disclosed systems, methods, interfaces, programs, andportals that may be executed by communications system 100 will now bedescribed in more detail with reference to the exemplary embodiments ofFIGS. 2-5. The methods of FIGS. 2 and 3 may be performed by anycombination of messaging clients 102, mobile messaging clients 103,messaging servers 104, web servers 106, and/or user info and locationdatabases 114, 116, as will be described in more detail below.

Exemplary systems and methods consistent with the present disclosure aredisclosed for providing, among other things, the ability for users toadd, track, or follow a physical location or list of locations throughtheir list of friends or buddy lists. In accordance with certainembodiments, location files may contain text, photos, videos, updates,and/or activities that have happened at that physical location.

As described above, a universal communication system may allow users toassociate text or photo updates with a location. The system may use GPSservers 108 to automatically determine the user's location via latitudeand longitude, or allow the user to select where he or she is currentlylocated. The user may use applications running on messaging clients 102or mobile messaging clients 103 to keep track of where friends orcontacts are and what they are doing currently at a location. However,the user may also desire to follow a location and to see what ishappening at that location regardless of whether a friend or contact isthere or not. In other words, a user may desire to look at what ishappening at location “X,” regardless of whether the user is near thatlocation or a friend is at that location. For this purpose, system 100may be configured to persistently save a location and activityinformation within location databases 116, so at any time a user canquickly check to see what is happening in real-time at that locationwithout having to remember where it is (e.g., without knowing alatitude/longitude or address), or the location's name.

Thus, communications system 100 may be configured to provide users withthe ability to associate their status updates and/or photos with alocation, via web servers 106. The location may be determined by usingGPS on mobile devices to get latitude and longitude coordinates (e.g.,using GPS servers 108), or for desktop and web applications fromOperating System libraries or using Open Source/W3C standards, i.e.HTML5. The latitude and longitude coordinates may be used to reversegeo-encode the location to generate a human readable street address. Thestreet address may then be used to look up businesses within a givenradius (e.g., within 1 km radius). The user may then select the locationbased on the name and street address, or add a new location if it is notalready in the list. The added location may then be stored in locationdatabases 116 for future users to view. Each location, whether beingreturned from a reverse geo-encode lookup or manually added by the user,may have a unique identifier stored in relation to the location.

Once the location is associated with a status message and/or photo, theuser can post the content to a messaging or social network via messagingservers 104. The posting of the message via messaging servers 104 maycontain two new parameters, including latitude/longitude coordinates,and the unique location ID. Thus, status updates can belong to or beassociated with both the user, and the unique ID representing alocation. Any user can therefore view a location via that unique ID andsee all the status updates occurring at that location. In anotherembodiment, only a user's buddies, contacts, or friends may view theposted status updates, location, photos, etc. of the user. In yetanother embodiment, users may select whether only such contacts may viewposts (e.g., private or closed system) or whether the entire network mayview such posts (e.g. public or open system).

Because a location has a unique ID, the location may be treated as if itwere the type of screen name or user ID traditionally stored in a user'slist of friends or buddy list (see, e.g., FIG. 3A). Thus, in accordancewith exemplary systems and methods of the present disclosure, a user mayfollow a location by adding it to the user's buddy list. For example,users may employ applications operating on messaging clients 102 ormobile messaging clients 103 to add a location to a buddy list or listof friends. Web servers 106 may obtain information about the location byaccessing location databases 116. The information stored in locationdatabases 116 may include user status updates, check-ins, photos,videos, and/or general information about the location. Communicationssystem 100 may allow users to follow multiple locations and view/receiveupdates from locations as they do from their contacts or buddies. Forexample, if User A is following location X (e.g., on a list of contactsor a buddy list), and User B, who is not buddies or friends with User A,updates their status from location X, User A will automatically see thatupdate. This is due to User A's ability to persistently follow locationX on User A's buddy list. A user may also be able to communicate with alocation via an instant message or other means including audio or videocommunications or sessions.

Users may be able to set a location any time they update their status orupload photos or other content (video, audio, etc) to the system, whichwill log the event as an “activity.” Once a location has an activity,any user on the network can follow that location to view activitieshappening at this location. The system may be accessible via desktopinstant message systems, webmail, mobile applications, webpages, and anytype of mobile device or smartphone.

The location features consistent with the present disclosure will now bedescribed with reference to the exemplary embodiments of FIGS. 2A-2C and3A-3C. Referring now to FIGS. 2A-2C, system 100 may perform variousmethods 200A-200C, including method 200A for associating location IDswith users, method 200B for updating users with location data, andmethod 200C for answering user queries for location activity data.

As shown in FIG. 2A, method 200A may include receiving a location IDfrom a user who desires to follow that location (step 202). For example,one or more of messaging servers 104 and web servers 106 may receive alocation ID or selection of a location from one or more of messagingclients 102 and mobile messaging clients 103. Method 200 may theninclude associating the location ID with the user in user info database114, and using web servers 106 to display the location on the user'sbuddy list (step 204). For example, FIG. 3A depicts a user's buddy listhaving a plurality of buddies 302, including a location (e.g., Wegmans)stored therein. These steps of receiving a location's unique ID andassociating unique location IDs with users may be performed at any time,asynchronously, for any user when that user indicates interest in alocation.

Meanwhile, assuming one or more users initiated steps 202 and 204 byelecting to follow one or more locations, the web servers 106 mayperform method 200B to automatically update those users on locationactivity. For example, at any given moment, the system may receive astatus update and location ID from a user (step 206). In other words, auser may use a mobile messaging client 103 running on a smartphone orPDA to upload a status update and/or photo associated with the user'slocation (e.g., with the help of GPS servers 108). Web servers 106 maythen identify the one or more users who have the location ID for thatparticular location associated with their user IDs (step 208). Forexample, web servers 106 may search for the location ID within userprofiles stored in user info databases 114. Web servers 106 may thendisplay the status update and/or photo in relation to the locationstored in each of those users' buddy lists (step 210). That is, for eachuser who has the location ID stored in the user's buddy list, webservers 106 may generate a buddy list display, and display to thoseinterested users the activity that initiated updating of the location.

By way of example, FIG. 3B shows a list of a plurality of locations 304that a user is following. A user may click, tap, or otherwise select oneof the locations 304 to view a location profile, as shown in FIG. 3C.The location profile may include detailed information 306 regarding thelocation, and/or a list of events or updates 308 shown in order ofoccurrence. Updates 308 may include user photos, user check-ins, usercomments, or any other user-generated content regarding the location. Inthe embodiment of FIG. 3C, an exemplary location page is depicted for“Wegmens,” including a plurality of user updates or activities 308 underthe “Wegmans” location. Users may reach this location page by selectingthe location from the exemplary buddy list of FIG. 3A or from theexemplary locations page of FIG. 3B. The updates may be shown by rankingof recency, popularity, positive feedback, number of comments, etc. Theupdates may also be displayed regardless of which messaging brand wasused to create the status update.

With regard to method 200C, web servers 106 may receive a query from auser for activities for the user's buddy list (step 212). For instance,a user may desire to view all activities occurring in relation to aparticular location in the user's buddy list. Web servers 106 may thenfetch activity data associated with the location for each buddy in thebuddy list (e.g., from user databases 114 and/or location databases 116)(step 214). Alternatively, web servers 106 may fetch activity data forall users associated with the location. Web servers 106 may then returna list of the fetched activity data to the user (step 216).

In one embodiment, a user can leave a note, image, video, audio, orother content at a location they have arrived at or “checked into,”whereby the content is left for a particular user on the user's buddylist instead of for any and all users in the network. Thus, when thatparticular user visits the location and arrives or “checks in” uponarrival, the content will be delivered to that user. According to thisembodiment, users may leave messages for particular contacts on theirbuddy list, where the message is only delivered when the particularcontacts visit the location where the message was left. In oneembodiment, if the selected contact never visits the location, thecontact will never receive the message. In another embodiment, users canview a list of messages left for them at various locations, even withoutphysically visiting or checking into the location.

Exemplary systems and methods consistent with the present disclosure arealso disclosed for filtering or hiding messaging as desired by a user.As described above, the universal messaging system 100 may aggregate acollection of activities, including text updates from users on a varietyof social networks.

In some cases, users may generate activities on one or more socialnetworks, such as AIM, Facebook, or Twitter, that flood the activitystream with activities that a recipient user may not be interested inreading or otherwise consuming. In extreme cases, this activity may beconsidered to be a form of spam. Some social networks have tried tosolve this problem by enabling the filtering or hiding of particularcontacts or types of activities (e.g., “hide everything from Jim,” or“hide all Tweets”). However, such systems provide no way of hiding allactivities about a specific subject regardless of the user updating theactivity or the medium through which the communication was sent.

Accordingly, as shown with reference to the exemplary methods of FIGS. 4and 5, system 100 may provide the ability for a user to filter or hideactivities based on a location, partial text, a word, a set of words,and/or a user's ID. The user may also be able to filter based onobjects, images, “avatars,” file attachments, file types, or any othercombination of distinguishing features or partial features. The methodsof FIGS. 4 and 5 may be performed by any combination of messagingclients 102, mobile messaging clients 103, messaging servers 104, webservers 106, and/or selected text databases 112, as will be described inmore detail below.

Referring now to the exemplary embodiment of FIGS. 4A and 4B, exemplarymethods 400A and 400B may enable selected text of a specific activity tobe hidden for all activities past, present, and future in the universalmessaging system or social network. This hiding operation may bereferred to as “muting” and it may be enabled at the client level. Inone embodiment, muting may be determined based on text that the user hashighlighted, and it may contain a subset of characters, a word, or agroup of words, as shown in FIG. 5. For example, as shown in FIG. 5, auser may select a portion of text 502 within a news feed, electroniccommunication, status update, or the like. Messaging clients 102, 103and/or web servers 106 may then generate a menu 504 by which a user mayelect to mute or otherwise filter the selected text for all of theuser's contacts (“everyone”), or solely for the user who initiated theselected text.

Thus, methods 400A and 400B may include hiding activities based on afree form text expression. For example, a user may hide or mute allactivities from Jim when his activity contains the word “food”. The textmay be selected by highlighting, freeform entry into a text box, or anyother user input means. The method may then implement hiding of anyactivities containing the text the user desired to mute. The muted textmay be added to a list by which the user can control so as to un-mutethe text and show the activities in the stream again. The particularstring of text may be filtered or hidden with respect to a singlecontact, several selected contacts, or even everyone in the network.

Referring now to the exemplary embodiment of FIG. 4, method 400A mayinclude receiving highlighted message text from a user (step 402). Theweb servers 106 may then provide a menu for the user to either filter ormute the selected message text for all contacts or only for a particularmessaging contact (step 404).

The web servers 106 may receive a user selection of either option fromthe menu (step 406). The web servers 106 may then add the selected textto a database for all contacts, or only the particular message contact,based on the user's selected option (step 408). For instance, theselected text may be stored in selected text database 112 of system 100,in relation to one or more contacts. Steps 402-408 of method 400A may beperformed asynchronously, any number of times, depending on how oftenand when users select message text to be muted.

One or more of messaging clients 102, 103 and web servers 106 mayperiodically perform method 400B, including receiving from any anothercontact a message directed to be delivered to a user (step 410). The webservers 106 (or any back-end servers) may iteratively scan and indexover the textual content in the message (step 412). Although, asdescribed above, one or more of messaging clients 102, 103 and webservers 106 may also scan or identify matching images, avatars, objects,file types, etc.

The web servers 106 or back-end servers may then check for any matchesbetween textual content in the message and text selected and stored bythe recipient user (step 414). For example, the web servers 106 orback-end servers may compare indexed message text with text stored bythe recipient in selected text database 112 during step 408. If thereare any matches between message text and the recipient's selected text,the web servers 106 or back-end servers may hide the message if thematched text is stored either in relation to the whole network or atleast in relation to the sending user (step 416). In other words, thesystem may first verify whether the recipient user desired to block thattext from the particular sending user.

In one embodiment, messages may be aggregated from different socialnetworking or messaging accounts. For example, a user may selectmessaging data, such as text or an image, from a message sent through afirst type of messaging account (e.g., a first social network), and thesystem may filter communications having the selected messaging data frommessages sent from one or more other types of messaging accounts (e.g.,a second or other social networks, email networks, etc.).

Although described in relation to a universal messaging system, thepresently disclosed embodiments may be implemented in relation to anytype of electronic communications system, such as an e-mail system, aninteroffice communications system, a mobile networking system, etc.Moreover, although disclosed in relation to a buddy list, theseembodiments may also be used in relation to contact lists, employeelists, recent contact lists, archive lists, etc. The location trackingand filtering features described herein may also be used together, e.g.,by filtering locations or adding locations based on filtered text.Finally, users may select between posting communications only tobuddies, one or more buddies, or to the entire network, to selectivelychoose between either an open or closed system, or even a partially openand closed system.

Embodiments of the present disclosure may include a method or process,an apparatus or system, or computer software on a computer medium. It isintended that various modifications may be made without departing fromthe spirit and scope of the following claims. For example, advantageousresults still could be achieved if steps of the disclosed techniqueswere performed in a different order and/or if components in thedisclosed systems were combined in a different manner and/or replaced orsupplemented by other components. Other implementations are within thescope of the following exemplary claims.

It will be apparent to those skilled in the art that variousmodifications and variations can be made to the systems and methodsdisclosed herein. It is intended that the disclosed embodiments andexamples be considered as exemplary only, with a true scope of thepresent disclosure being indicated by the following claims and theirequivalents.

1. A computer-implemented method for filtering electroniccommunications, the method comprising: receiving a first messagedirected to a user, the first message being communicated by a firstmessaging service and including a plurality of messaging data; receivingfrom the user a selection of the messaging data within the firstmessage; adding the selected messaging data to a database in relation toone or more contacts of the user; receiving a second message directed tothe user from at least one of the one or more contacts, the secondmessage being communicated by a second messaging service; scanning thesecond message for the selected messaging data; and filtering, with atleast one processor, the second message from delivery to the user if thesecond message contains the selected messaging data.
 2. Thecomputer-implemented method of claim 1, wherein the messaging dataincludes one or more of textual data and image data.
 3. Thecomputer-implemented method of claim 1, wherein receiving the selectionfrom the user includes receiving a highlighting selection of theselected messaging data from the user.
 4. The computer-implementedmethod of claim 1, further comprising: providing the user with an optionof filtering messages having the selected messaging data from either asender of the first message, or all of the user's contacts.
 5. Thecomputer-implemented method of claim 1, further comprising: providingthe user with a mechanism for ceasing to filter messages having theselected messaging data.
 6. The computer-implemented method of claim 1,wherein the first and second messages are instant messages and thecontacts are instant messaging contacts.
 7. The computer-implementedmethod of claim 1, wherein the first and second messages are electronicmessages that originate from a plurality of social networks orcommunications systems.
 8. The computer-implemented method of claim 1,wherein filtering the second message includes preventing the secondmessage from being displayed to the user in a contact list, socialnetworking feed, or inbox, in the course of normal message delivery. 9.The computer-implemented method of claim 1, wherein filtering the secondmessage includes logging the second message in a secondary queue apartfrom a standard contact list, social networking feed, or inbox.
 10. Acomputer system for filtering electronic communications, the systemcomprising: a database configured to store user data and selectedmessaging data; a messaging server disposed in communication with thedatabase and configured to: receive a first message directed to a user,the first message including a plurality of messaging data; receive fromthe user a selection of the messaging data within the first message; addthe selected messaging data to a database in relation to one or morecontacts of the user; receive a second message directed to the user fromat least one of the one or more contacts; scan the second message forthe selected messaging data; and filter, with at least one processor,the second message from delivery to the user if the second messagecontains the selected messaging data.
 11. The computer system of claim10, wherein the messaging data includes one or more of textual data andimage data.
 12. The computer system of claim 10, wherein receiving theselection from the user includes receiving a highlighting selection ofthe selected messaging data from the user.
 13. The computer system ofclaim 10, wherein the messaging server is further configured to: providethe user with an option of filtering messages having the selectedmessaging data from either a sender of the first message, or all of theuser's contacts.
 14. The computer system of claim 10, wherein themessaging server is further configured to: provide the user with amechanism for ceasing to filter messages having the selected messagingdata.
 15. The computer system of claim 10, wherein filtering the secondmessage includes preventing the second message from being displayed tothe user in a contact list, social networking feed, or inbox, in thecourse of normal message delivery.
 16. The computer system of claim 10,wherein filtering the second message includes logging the second messagein a secondary queue apart from a standard contact list, socialnetworking feed, or inbox.
 17. The computer system of claim 10, whereinthe messaging data includes one or more of textual data and image data.18. A non-transitory computer-readable storage medium storinginstructions that, when executed by a computer, cause the computer to:receive a first message directed to a user, the first message includinga plurality of messaging data; receive from the user a selection of themessaging data within the first message; add the selected messaging datato a database in relation to one or more contacts of the user; receive asecond message directed to the user from at least one of the one or morecontacts; scan the second message for the selected messaging data; andfilter, with at least one processor, the second message from delivery tothe user if the second message contains the selected messaging data. 19.The non-transitory computer-readable storage medium of claim 18, furthercomprising instructions for the computer to: provide the user with anoption of filtering messages having the selected messaging data fromeither (1) a sender of the first message, or (2) all of the user'scontacts.
 20. The non-transitory computer-readable storage medium ofclaim 18, wherein receiving the selection from the user includesreceiving a highlighting selection of the selected messaging data fromthe user.